from enum import Enum, IntEnum


class Gender(str, Enum):
    Male = "男"
    Female = "女"


class StateEnum(IntEnum):
    """
    允许登录的权限,1:允许,2:禁用
    """
    allow = 1
    forbidden = 2


class UserTypeEnum(IntEnum):
    """
    用户类型渲染不同的路由数据
    """
    user = 1  # 普通用户
    admin = 2  # 管理员


class ModelTypeEnum(IntEnum):
    """
    模型类型
    """
    zhipu = 1
    xfyun = 2
    ernie = 3


class SessionTypeEnum(IntEnum):
    """
    会话类型
    """
    chat = 1
    draw = 2
    video = 3


class VectorStoreEnum(IntEnum):
    """
    向量库类型
    """
    milvus = 1


class EmbeddingServerEnum(IntEnum):
    """
    向量库服务
    """
    bce = 1
    bailian = 2


class KnowledgeFileStateEnum(IntEnum):
    """
    知识库文件处理状态
    """
    waiting = 1  # 等待处理
    processing = 2  # 处理中
    success = 3  # 处理成功
    failed = 4  # 处理失败
